An embedded data block (EDB) is a two-dimensional image symbology for the storage and retrieval of data. EDBs are composed of embedded data characters, some of which are encoded to define a synchronization frame and others of which are encoded to carry user/application-specific information. The synchronization frame and the user information are the two major structural components of an EDB. Patents relating to the encoding of EDBs include U.S. Pat. No. 5,453,605, U.S. Pat. No. 5,449,896, U.S. Pat. No. 5,572,010, U.S. Pat. No. 5,862,271 and U.S. Pat. No. 5,939,703, all of which are incorporated by reference in their entireties for the teachings therein.
One example of an EDB is a glyph block. Glyph blocks encode information, for example, text, data and graphics, in thousands of tiny glyphs. Typically, glyph blocks are written on a recording medium in accordance with a regular and repeating spatial formatting rule that is selected to map the glyph encodings into a two dimensional, rectangular array of logical data blocks of predetermined size, such as data blocks having a 16 symbol cell×16 symbol cell format. These data blocks suitably are organized sequentially on the recording medium in left-to-right, top-to-bottom logical order. Glyph block detection is then also be performed sequentially.
The existing techniques for decoding glyph codes are designed to be initialized at or near the center of a reference glyph that occupies a known spatial position relative to the remainder of the glyph code (for example, the reference glyph is located in the upper, left-hand corner of a rectangular array of glyphs). Thus, accurately locating this reference glyph is a key to spatially synchronizing the decoding process with the glyph code. The decoding of glyphs is often time-consuming, inefficient, and inaccurate. Therefore, it would be desirable to have a more efficient way to encode and decode glyphs on a recording medium.